package com.bert.entities;

import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;

import org.dom4j.tree.AbstractEntity;
import org.hibernate.annotations.GenericGenerator;

@Entity
@Table(name="Evento",  uniqueConstraints = { @UniqueConstraint( columnNames = { "fecha", "idevento" } ) } )
@GenericGenerator(name="EventoSeq", strategy="increment")
public class Evento extends AbstractEntity implements java.io.Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@Id	
	@GeneratedValue(generator="EventoSeq")
	private Long id;
	
	private Long idevento;

	private String titulo;	

	private String precio;

	private boolean gratuito;

	private boolean largaDuracion;

	private String diasSemana;

	private String diasExcluidos;

	private Date fecha;	

	private Date fechaFin;

	private String hora;

	private String descripcion;

	private String contentUrl;

	private String tituloActividad;

	private String urlActividad;

	private String urlInstalacion;

	private String nombreInstalacion;

	private Double coordenadaX;	

	private Double coordenadaY;	

	private Double latitud;

	private Double longitud;	


	/**
	 * @return the idevento
	 */
	 public Long getIdevento() {
		 return idevento;
	 }

	 /**
	  * @param idevento the idevento to set
	  */
	 public void setIdevento(Long idevento) {
		 this.idevento = idevento;
	 }

	 /**
	  * @return the titulo
	  */
	 public String getTitulo() {
		 return titulo;
	 }

	 /**
	  * @param titulo the titulo to set
	  */
	 public void setTitulo(String titulo) {
		 this.titulo = titulo;
	 }

	 /**
	  * @return the precio
	  */
	 public String getPrecio() {
		 return precio;
	 }

	 /**
	  * @param precio the precio to set
	  */
	 public void setPrecio(String precio) {
		 this.precio = precio;
	 }

	 /**
	  * @return the gratuito
	  */
	 public boolean isGratuito() {
		 return gratuito;
	 }

	 /**
	  * @param gratuito the gratuito to set
	  */
	 public void setGratuito(boolean gratuito) {
		 this.gratuito = gratuito;
	 }

	 /**
	  * @return the largaDuracion
	  */
	 public boolean isLargaDuracion() {
		 return largaDuracion;
	 }

	 /**
	  * @param largaDuracion the largaDuracion to set
	  */
	 public void setLargaDuracion(boolean largaDuracion) {
		 this.largaDuracion = largaDuracion;
	 }

	 /**
	  * @return the diasSemana
	  */
	 public String getDiasSemana() {
		 return diasSemana;
	 }

	 /**
	  * @param diasSemana the diasSemana to set
	  */
	 public void setDiasSemana(String diasSemana) {
		 this.diasSemana = diasSemana;
	 }

	 /**
	  * @return the diasExcluidos
	  */
	 public String getDiasExcluidos() {
		 return diasExcluidos;
	 }

	 /**
	  * @param diasExcluidos the diasExcluidos to set
	  */
	 public void setDiasExcluidos(String diasExcluidos) {
		 this.diasExcluidos = diasExcluidos;
	 }

	 /**
	  * @return the fecha
	  */
	 public Date getFecha() {
		 return fecha;
	 }

	 /**
	  * @param fecha the fecha to set
	  */
	 public void setFecha(Date fecha) {
		 this.fecha = fecha;
	 }

	 /**
	  * @return the fechaFin
	  */
	 public Date getFechaFin() {
		 return fechaFin;
	 }

	 /**
	  * @param fechaFin the fechaFin to set
	  */
	 public void setFechaFin(Date fechaFin) {
		 this.fechaFin = fechaFin;
	 }

	 /**
	  * @return the hora
	  */
	 public String getHora() {
		 return hora;
	 }

	 /**
	  * @param hora the hora to set
	  */
	 public void setHora(String hora) {
		 this.hora = hora;
	 }

	 /**
	  * @return the descripcion
	  */
	 public String getDescripcion() {
		 return descripcion;
	 }

	 /**
	  * @param descripcion the descripcion to set
	  */
	 public void setDescripcion(String descripcion) {
		 this.descripcion = descripcion;
	 }

	 /**
	  * @return the contentUrl
	  */
	 public String getContentUrl() {
		 return contentUrl;
	 }

	 /**
	  * @param contentUrl the contentUrl to set
	  */
	 public void setContentUrl(String contentUrl) {
		 this.contentUrl = contentUrl;
	 }

	 /**
	  * @return the tituloActividad
	  */
	 public String getTituloActividad() {
		 return tituloActividad;
	 }

	 /**
	  * @param tituloActividad the tituloActividad to set
	  */
	 public void setTituloActividad(String tituloActividad) {
		 this.tituloActividad = tituloActividad;
	 }

	 /**
	  * @return the urlActividad
	  */
	 public String getUrlActividad() {
		 return urlActividad;
	 }

	 /**
	  * @param urlActividad the urlActividad to set
	  */
	 public void setUrlActividad(String urlActividad) {
		 this.urlActividad = urlActividad;
	 }

	 /**
	  * @return the urlInstalacion
	  */
	 public String getUrlInstalacion() {
		 return urlInstalacion;
	 }

	 /**
	  * @param urlInstalacion the urlInstalacion to set
	  */
	 public void setUrlInstalacion(String urlInstalacion) {
		 this.urlInstalacion = urlInstalacion;
	 }

	 /**
	  * @return the nombreInstalacion
	  */
	 public String getNombreInstalacion() {
		 return nombreInstalacion;
	 }

	 /**
	  * @param nombreInstalacion the nombreInstalacion to set
	  */
	 public void setNombreInstalacion(String nombreInstalacion) {
		 this.nombreInstalacion = nombreInstalacion;
	 }

	 /**
	  * @return the coordenadaX
	  */
	 public Double getCoordenadaX() {
		 return coordenadaX;
	 }

	 /**
	  * @param coordenadaX the coordenadaX to set
	  */
	 public void setCoordenadaX(Double coordenadaX) {
		 this.coordenadaX = coordenadaX;
	 }

	 /**
	  * @return the coordenadaY
	  */
	 public Double getCoordenadaY() {
		 return coordenadaY;
	 }

	 /**
	  * @param coordenadaY the coordenadaY to set
	  */
	 public void setCoordenadaY(Double coordenadaY) {
		 this.coordenadaY = coordenadaY;
	 }

	 /**
	  * @return the latitud
	  */
	 public Double getLatitud() {
		 return latitud;
	 }

	 /**
	  * @param latitud the latitud to set
	  */
	 public void setLatitud(Double latitud) {
		 this.latitud = latitud;
	 }

	 /**
	  * @return the longitud
	  */
	 public Double getLongitud() {
		 return longitud;
	 }

	 /**
	  * @param longitud the longitud to set
	  */
	 public void setLongitud(Double longitud) {
		 this.longitud = longitud;
	 }

	 /**
	  * @return the tipo
	  */
	 public String getTipo() {
		 return tipo;
	 }

	 /**
	  * @param tipo the tipo to set
	  */
	 public void setTipo(String tipo) {
		 this.tipo = tipo;
	 }

	 private String tipo;

}
